#ifndef ERRMSG_H
#define ERRMSG_H

enum ErrorMsgs
{
	EM_Success = -1,		// used internally, never sent
	EM_NoError = -2,		// it's not success.. but it's not an error.. ie optional

	// Common, top-level protocol errors:  0x00 - 0x0f
	//
	EM_ServerDownForMaintenance,
	EM_BadRequest,
	EM_UnknownPackage,
	EM_BadAuth,

	// Protocol-specific errors: 0x10 - 0xff (range reused for each protocol)
	//
	// List packages
	//
	EM_PkgListChanged = 0x10,

	// Download package
	//
	EM_ZipDataError = 0x10,

	// RS List (package contents)
	//
	EM_RSPkgListChanged = 0x10,
	EM_RSPkgChanged,
	EM_RSBadPackage,
	EM_RSOutOfMemory,

	// RS Download package
	// 
	EM_RSDL_IOError = 0x10,
	EM_RSDL_OutOfMemory,
	EM_RSDL_FileError,
	EM_RSDL_DigestError,
};

#endif
